/*
 * Copyright (c) 2018.
 * http://www.ulabcare.com
 */

package com.mt.roll.core.enums;

import com.mt.roll.core.base.IEnum;

/**
 * 请求类型：GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS, TRACE
 *
 * @author jiff
 * @date 2018/11/22
 * @since 1.0
 */
public enum HttpMethodEnum implements IEnum<String> {
    /**
     * get
     */
    GET("get", "get"),
    /**
     * head
     */
    HEAD("head", "head"),
    /**
     * post
     */
    POST("post", "post"),
    /**
     * patch
     */
    PATCH("patch", "patch"),
    /**
     * delete
     */
    DELETE("delete", "delete"),
    /**
     * options
     */
    OPTIONS("options", "options"),
    /**
     * trace
     */
    TRACE("trace", "trace");


    private final String value;
    private final String label;
    private final String remark;

    HttpMethodEnum(final String value, final String label) {
        this(value, label, null);
    }

    HttpMethodEnum(final String value, final String label, final String remark) {
        this.value = value;
        this.label = label;
        this.remark = remark;
    }

    /**
     * @return 数据值
     */
    @Override
    public String getValue() {
        return value;
    }

    /**
     * @return 标签名
     */
    @Override
    public String getLabel() {
        return label;
    }

    /**
     * @return 备注
     */
    @Override
    public String getRemark() {
        return remark;
    }
}
